Computer programs written in certain high-level programming languages, such as, for example, Java, may be converted to a platform-specific set of instructions by a two-stage process: a compiler may translate a program module written in the high level programming language into an interim representation, often referred to as “bytecode,” which then may be translated into a platform-specific set of instructions by a virtual machine (such as, for example, Java virtual machine (JVM)). Since the virtual machine may run on various target platforms, the high-level programming language interpreted by the virtual machine may become platform independent to the extent of the virtual machine being implemented for a particular platform. Some virtual machines may include “Just-in-Time” (JIT) compilers to compile bytecode into a set of machine instructions at run time, thus improving the code execution efficiency by avoiding the necessity to repeatedly interpret sections of bytecode which are executed more than once.